package com.hyperboost.backend.mapper;

import java.util.List;
import com.hyperboost.backend.domain.ShareTag;
import com.hyperboost.common.annotation.AutoFill;
import com.hyperboost.common.enums.OperationType;

/**
 * 分享标签Mapper接口
 * 
 * @author LXY
 * @date 2025-04-19
 */
public interface ShareTagMapper 
{
    /**
     * 查询分享标签
     * 
     * @param tagId 分享标签主键
     * @return 分享标签
     */
    public ShareTag selectShareTagByTagId(Long tagId);

    /**
     * 查询分享标签列表
     * 
     * @param shareTag 分享标签
     * @return 分享标签集合
     */
    public List<ShareTag> selectShareTagList(ShareTag shareTag);

    /**
     * 新增分享标签
     * 
     * @param shareTag 分享标签
     * @return 结果
     */
    @AutoFill(OperationType.INSERT)
    public int insertShareTag(ShareTag shareTag);

    /**
     * 修改分享标签
     * 
     * @param shareTag 分享标签
     * @return 结果
     */
    @AutoFill(OperationType.UPDATE)
    public int updateShareTag(ShareTag shareTag);

    /**
     * 删除分享标签
     * 
     * @param tagId 分享标签主键
     * @return 结果
     */
    public int deleteShareTagByTagId(Long tagId);

    /**
     * 批量删除分享标签
     * 
     * @param tagIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteShareTagByTagIds(Long[] tagIds);
}
